//package com.mdd.admin.config.sharding;
//
//import org.apache.shardingsphere.api.sharding.standard.PreciseShardingAlgorithm;
//import org.apache.shardingsphere.api.sharding.standard.PreciseShardingValue;
//import org.apache.shardingsphere.api.sharding.standard.RangeShardingValue;
//
//import java.util.ArrayList;
//import java.util.Collection;
//
//public class DatePreciseShardingAlgorithm implements PreciseShardingAlgorithm<Long> {
//
//    /**
//     * 精确分片
//     * @param availableTargetNames 有效的数据源或表的名字。这里就对应配置文件中配置的数据源信息
//     * @param shardingValue 包含 逻辑表名、分片列和分片列的值。
//     * @return 返回目标结果
//     */
//    @Override
//    public String doSharding(Collection<String> availableTargetNames, PreciseShardingValue<Long> shardingValue) {
//        //分库的规则:时间戳取中间六位数对数据库数量取模 例：1688811155000 --> 811155 % 3
//        Long id = shardingValue.getValue();
//        long mod = id % 1;
//        for (String targetName : availableTargetNames) {
//            if (targetName.endsWith(String.valueOf(mod))) {
//                return targetName;
//            }
//        }
//        throw new UnsupportedOperationException(" route ds"+mod+" is not supported. please check your config");
//    }
//
//}
